package ar.edu.unsam.algo2.tp2.partido.administrador

import ar.edu.unsam.algo2.tp2.partido.Jugador

class Calificacion extends Tarea {
	@Property int nota
	@Property String critica
	@Property Jugador jugadorCalificado
	@Property Jugador jugadorQueCalifica

	override aceptar() {
		try {
			this.jugadorCalificado.calificaciones.add(this)
			Administrador::instance.eliminarPendiente(this)
		} catch (NullPointerException e) {
			if (jugadorCalificado == null)
				throw new RuntimeException("Debe setear el jugador calificado")
		}
	}

	override rechazar() {
		try {
			this.jugadorQueCalifica.calificacionesRechazadas.add(this)
			Administrador::instance.eliminarPendiente(this)

		} catch (NullPointerException e) {
			if (jugadorQueCalifica == null)
				throw new RuntimeException("Debe setear el jugador que califica")
		}
	}

}
